The invention relates to communication systems, and, more particularly, to a modem which operates without a separate controller.
Computers which use a modem for communications are well-known in the art. As discussed more hereinafter, an exemplary computer of this type is shown in FIGS. 1A-1C and its use with a modem for communications is shown in FIG. 1D.
Communications between a computer and a modem typically occurs over a universal asynchronous receiver transmitter (UART) link. Modems can be connected to computers either by inserting a modem card into a bus connector for connecting to the computer bus directly (an internal modem) or modems can be connected to the computer over a communications port, when the modem is external. Internal and external modems of the prior art typically have an onboard processor or controller for managing the data protocols and transfers. The existence of an onboard processor is necessary, in the prior art, in order to ensure that the modem functions get adequate processing time. The need for a dedicated processor is particularly acute in a multi-tasking computer system in which a plurality of simultaneous tasks may be running. If those tasks fail to relinquish the processor to a modem application in a timely fashion, data characters will be lost and a data transfer can be aborted.
The provision of a separate processor or controller to run a modem, merely to ensure adequate processing power for modem tasks, is expensive and provides redundant capabilities to that which already exist on a computer hosting the modem. The host has its own processor, bus and system clock. Providing these redundantly in a modem provides additional costs which would be obviated if a modem could utilize the host processor capabilities.
Nevertheless, in the past, it has not been feasible to utilize the host processor and bus to do modem processing given the stringent timing requirements needed to ensure reliable data communications over the modem and given the presence of other processes which compete for processor time.
The invention provides a controllerless modem which utilizes the services of the host processor and ensures reliable data communications even in the presence of competing processes. A controllerless modem in accordance with the invention is guaranteed adequate processing time from the host processor to service communications needs. Further, the controllerless modem of the invention eliminates certain hardware which was necessary to coordinate between the host and the modem in the prior art.
The invention relates to apparatus, methods, systems and computer program products for providing modem functionality as a virtual device driver running on a host processor rather than as a standalone modem having its own processor.
Still other objects and advantages of the present invention will become readily apparent to those skilled in the art from the following detailed description, wherein only the preferred embodiment of the invention is shown and described, simply by way of illustration of the best mode contemplated of carrying out the invention. As will be realized, the invention is capable of other and different embodiments, and its several details are capable of modifications in various obvious respects, all without departing from the invention. Accordingly, the drawing and description are to be regarded as illustrative in nature, and not as restrictive.